1. Field of the Invention
The present invention relates generally to a method of updating protected memory areas of a computing system while a processor is in a protected mode and, more particularly, to a method for updating a Desktop Management Interface/System Management Basic Input/Output System (DMI/SMBIOS) portion of flash read-only memory (ROM) of a computing system using a Basic Input/Output System BIOS function 52h (Set Structure) call and a system management interrupt (SMI).
2. Description of the Related Art
In the past decade, the computer industry has grown with breathtaking speed. Not only have the number and types of computers grown exponentially, but also new computer configurations, software products and peripheral devices have proliferated.
In parallel with, and perhaps as the result of, the increase of computers, the amount of accessible information has also exploded. As a result, there is a corresponding need for computers to share information and so, increasingly, computers are networked together. The trend of increasing numbers of computers, software and related devices and the trend of increased computer networking have exacerbated the need for information standards and computer components that both work as manageable, cohesive units and are also able to self-configure, self-adjust and communicate with each other and the user.
In an effort to enable computer systems to cooperate effectively, the Desktop Management Task Force (DMTF) was created in 1992 by a number computer equipment vendors such as Intel Corporation of Santa Clara, Calif., Microsoft Corporation of Redmond, Wash., Novell Corporation of Provo, Utah, SunSoft Corporation of Mountain View, Calif. and SynOptics Communications Corporation of Santa Clara, Calif. The DMTF set out to develop a cooperative strategy for managing the resources of desktop computer systems. In October 1993, the DMTF released a developers' version of what is presently termed the Desktop Management Interface/System Management Basic Input/Output System (DMI/SMBIOS). DMI/SMBIOS was the computer industry's first protocol and operating system (OS) independent application program interface (API) for managing the personal computer (PC). In conjunction with DMI/SMBIOS, the DMTF defined a management information format (MIF), a common format for information shared by systems utilizing DMI/SMBIOS.
Using MIF and DMI/SMBIOS, a system administrator can query a MIF database of a computer system and determine the software and hardware configuration of the system easily and quickly. The MIF database contains all information about the computer system and its components. This facility simplifies common administrative procedures such as the installation of new software and hardware, the diagnosis of problems and the implementation of solutions to those problems. In conjunction with standard network communication protocols such as the Simple Network Management Protocol (SNMP), DMI/SMBIOS also works on computers that are connected to a computer of an administrator by means of a local area network (LAN). In this way, a technician or LAN administrator can remotely determine the behavior at another computer.
Among other things, access to the MIF database is influenced by the nature of memory within a computer system. Memory within a computer system can be classified into one of two types, volatile memory and non-volatile memory. Volatile memory is memory that loses its contents whenever power to the computer system is turned off. An example of volatile memory is a random access memory (RAM). In contrast, non-volatile memory retains its contents when power to the computer system is turned off. In a computer system, non-volatile memory is typically a form of read-only memory (ROM) and volatile memory is typically a form of random access memory (RAM).
When a computer system is turned on, it must retrieve a basic input output system (BIOS) from non-volatile memory, often a ROM device termed ROM BIOS. A major disadvantage of ROM BIOS is that it must be loaded into the ROM device when the computer system is manufactured, making the ROM BIOS difficult to update when new types of devices are added to the computer system. To address this problem, current computer systems often contain flash ROM, a type of non-volatile memory that, unlike standard ROM, can be altered after it has been installed. Flash ROM enables BIOS to be updated whenever necessary, providing more flexibility when adding components or otherwise changing a system configuration of a computer system. One limitation of flash ROM is that the contents must be altered in blocks instead of individual bytes as is common with other memory devices such as RAM and hard disk drives.